今天來製作地點篇與資訊聯絡篇的任務列表,會使用到昨天建好的JSON檔以及FlatList。
Flatlist可用來製作列表,其本身就是一個迴圈指令,使用時需要對三個參數data、renderItem、keyExtractor做設定:
我先將JSON檔import進來後把locationData.locationList設定給data,之後將要顯示的畫面寫好(這邊採用自訂元件的方式,下篇會介紹),而keyExtractor我則將陣列中的title設為每筆資料的key。
import React from "react";
import LocationDetail from "../components/LocationDetail";
import locationData from "../json/location.json";
const LocationScreen = ({ navigation }) => {
return (
<ImageBackground style={{flex: 1}} source={require('../../assets/bg_all.png')}>
<FlatList
data={locationData.locationList}
renderItem={({ item }) =>
<LocationDetail
location={item}
navigation={navigation}
/>}
keyExtractor={item => item.title}
/>
</ImageBackground>
);
};
export default LocationScreen;
*小提示:navigation是用來記錄頁面跳轉的參數。
資訊聯絡篇的任務列表也是一樣的作法,只要把JSON的部分換成資小連洛篇的檔案即可。